<%--
 * Título: gestHora. Aplicación web de gestión de horarios para conservatorios.
 * Alumnos:
 * - Javier Pardo Muñoz. I.T. Informática de Gestión
 * - Antonio Prior Cazorla. I.T. Informática de Gestión
 * Director: Dr. José Raúl Romero Salguero.
 *     
 *  Copyright (C) 2013 Javier Pardo Muñoz / Antonio Prior Cazorla
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.

 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
--%>

<%@page import="java.text.ParsePosition"%>
<%@page import="java.util.Date"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="es.uco.gesthora.business.gestorRutas.GestorRutas"%>
<%@page import="es.uco.gesthora.data.gestorPropiedades.GestorPropiedades"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>

<jsp:useBean id="MsgBean" class="es.uco.gesthora.interfaz.MsgBean" scope="session"/>
<jsp:useBean id="UsuarioBean" class="es.uco.gesthora.interfaz.UsuarioBean" scope="session"/>

<html>

    <head>
        <link rel="stylesheet" type="text/css" href="/gestHora/css/general.css">

        <script type="text/javascript" src="/gestHora/js/ajax/solicitudGrupo.js"></script> 
        <script type="text/javascript" src="/gestHora/js/jQuery.js"></script> 
        <script type="text/javascript" src="/gestHora/js/menu.js"></script>          

        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link rel="icon" type="image/png" href="/gestHora/img/favicon.png" />

        <script type="text/javascript">

            $(document).ready(function() {

                /*Funciones para el listado de horarios*/
                $('#mostrarNueva').click(function() {
                    $('#formNuevoSolicitudGrupo').fadeIn();
                    $('#tablaView').fadeIn();
                });

                $('#ocultarNuevo').click(function() {
                    $('#formNuevoSolicitudGrupo').fadeOut();
                    $('#tablaView').fadeOut();
                });

                $('#selectFiltrarCurso').change(function() {
                    rellenarSelectFiltrarAsignatura($('#selectFiltrarCurso').val());
                    $('#selectFiltrarAsignatura').removeAttr('disabled');
                    listarHorarioCursoEspecialidad();
                    limpiarSelectGrupo();
                });

                $('#selectFiltrarAsignatura').change(function() {
                    rellenarSelectFiltrarGrupoHorario($('#selectFiltrarAsignatura').val());
                    $('#selectFiltrarGrupo').removeAttr('disabled');
                    listarHorarioCursoEspecialidadAsignatura();
                });

                $('#selectFiltrarGrupo').change(function() {
                    listarHorario($('#selectFiltrarGrupo').val());
                    $('#selectPrioridad').removeAttr('disabled');
                });

                limpiarSelectAsignatura();
                limpiarSelectGrupo();
                rellenarSelectFiltrarCurso();
                limpiarTabla();
                listarHorarioEspecialidad();
                limpiarTablaGrupo();
                listarSolicitudesAlumno();
            });

            function confirmar(idGrupo, idUsuario) {
                if (confirm("¿Está seguro de eliminar la solicitud?"))
                    window.location.href = "/gestHora/jsp/controllers/solicitudGrupoController.jsp?tipo=borrarSolicitud&idGrupo=" + idGrupo + "&idUsuario=" + idUsuario;

            }

            function confirmarEdicion(idGrupo, idUsuario) {
                if (confirm("¿Está seguro desea modificar la prioridad de la solicitud?"))
                    window.location.href = "/gestHora/jsp/controllers/so licitudGrupoController.jsp?tipo=modificarSolicitu d&selectEditarPrioridad=" + $('#selectEditarPrioridad').val() + "&editarIdGrupo=" + idGrupo + "&editarIdUsuario=" + idUsuario;

            }


        </script>


        <title>gestHora: Solicitud de grupo</title>
    </head>

    <%
        String URL = "";

        /* Si el usuario está logueado permite entrar a la vista */
        if (UsuarioBean.getRol().equals("alumno")) {
    %>

    <body>

        <div class="contenedor">

            <jsp:include page="/jsp/views/header.jsp"/>

            <div class="contenido">
                <div class="contenido-dentro">                    
                    <div class="contenido-principal" role="main">

                        <jsp:include page="/jsp/views/menu.jsp"/>

                        <div id= "breadcumbs"  >

                            <a href="/gestHora/jsp/views/gestionUsuarioViewIndice.jsp">Inicio</a>
                            &#8594;
                            Solicitud de grupo


                        </div>

                        <section class="contenido-articulo">

                            <h2>Solicitud de grupo</h2><br/>

                            <%-- Se comprueba que se esté en periodo de solicitud de grupo --%>

                            <%
                                String path = GestorRutas.getInstance().getWebInfPath();
                                GestorPropiedades fechas = new GestorPropiedades(path, "DatosAplicacion.properties");

                                //Se obtiene la fecha de inicio, de fin y la actual y se le da formato
                                String inicio = fechas.getPropiedad("inicioSolicitudes");
                                String fin = fechas.getPropiedad("finSolicitudes");
                                SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm");
                                Date fechaInicio = sdf.parse(inicio, new ParsePosition(0));
                                Date fechaFin = sdf.parse(fin, new ParsePosition(0));
                                Date fechaActual = new Date();

                                //Si la fecha actual está entre al fecha de inicio y de final se muestra al usuario la interfaz de solicitud
                                if (fechaActual.after(fechaInicio) && fechaActual.before(fechaFin)) {

                            %>


                            <% if (MsgBean.getMsg().equals("")) {%>

                            <p>Seleccione un curso y una asignatura para visualizar los grupos disponibles. Haga clic encima del grupo elegido para añadirlo a su horario.</p>
                            <br/>

                            <a href="#" id="mostrarNueva"><img src="/gestHora/img/add.png" class="addImg"/>Añadir solicitud de grupo</a><br/><br/>

                            <form id="formNuevoSolicitudGrupo" class="formVistas oculto" method="post" action="/gestHora/jsp/controllers/solicitudGrupoController.jsp?tipo=insertarSolicitud">
                                <fieldset>

                                    <label for="curso">Curso: </label>
                                    <select id="selectFiltrarCurso" name="selectFiltrarCurso" >
                                    </select><br/>

                                    <label for="asignatura">Asignatura: </label>
                                    <select id="selectFiltrarAsignatura" name="selectFiltrarAsignatura" disabled="disabled">
                                    </select><br/>

                                    <label for="grupo">Grupo: </label>
                                    <select id="selectFiltrarGrupo" name="selectFiltrarGrupo" disabled="disabled">
                                    </select><br/>

                                    <label for="grupo">Prioridad: </label>
                                    <select id="selectPrioridad" name="selectPrioridad" disabled="disabled">
                                        <option value='' selected>Seleccione una prioridad</option>
                                        <option value='1' >1</option>
                                        <option value='2' >2</option>
                                        <option value='3' >3</option>
                                    </select><br/>

                                    <button id="anadir" value="" type="submit">Añadir</button>
                                    <button id="ocultarNuevo" type="reset">Cancelar</button><br/><br/>
                                </fieldset>
                            </form>

                            <table id='tablaView' class = 'tablaView' hidden="hidden"><thead><tr><th >Hora/Fecha</th><th>Lunes</th><th>Martes</th><th>Miércoles</th><th>Jueves</th><th>Viernes</th></tr></thead>
                                <tbody>

                                </tbody></table>

                            <br/>
                            <h2>Mis Solicitudes</h2><br/>
                            <table id='tablaGrupo' class = 'tablaView' ><thead><tr><th >Hora/Fecha</th><th>Lunes</th><th>Martes</th><th>Miércoles</th><th>Jueves</th><th>Viernes</th></tr></thead>
                                <tbody>

                                </tbody></table>


                            <% } else {%>
                            <a class="volver" href="/gestHora/jsp/views/solicitudGrupoView.jsp"> &#8592; Volver atrás</a><br/>

                            <p><%=MsgBean.getMsg()%></p>                            


                            <% MsgBean.setMsg("");%>


                            <% }%>

                            <%} //Si no estamos en el periodo se muestra al usuario un mensaje advirtiendolo
                            else {

                            %>

                            <p>El periodo de solicitud de grupos no está abierto.
                                <ul>
                                    <li>- Fecha de inicio de solicitudes: <%=inicio%></li>
                                    <li>- Fecha de fin de solicitudes: <%=fin%></li>
                                </ul>
                           
                            
                            <a class="volver" href="/gestHora/jsp/views/gestionUsuarioViewIndice.jsp"> &#8592; Volver atrás</a><br/>

                            <%
                                }
                            %>
                        </section>
                    </div>
                </div>

                <jsp:include page="/jsp/views/footer.jsp"/>

            </div>
        </div>

    </body>
</html>


<%} /* En caso de que el usuario no esté logueado muestra un mensaje de error */ else {
        MsgBean.setMsg("No tiene permisos para visualizar esta página. Inicie sesión con un usuario con privilegios.");
        URL = "/error.jsp";

        response.sendRedirect("/gestHora" + URL);

    }%>
